#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QGraphicsScene>
#include <QWheelEvent>
#include <QBasicTimer>

#include "qimageupdatethread.h"
#include "imagegraphicsitem.h"
#include <QImage>
#include "lockimage.h"

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

public slots:

protected:
    void timerEvent(QTimerEvent *e) Q_DECL_OVERRIDE;
    void resizeEvent(QResizeEvent *event) Q_DECL_OVERRIDE;
#ifndef QT_NO_WHEELEVENT
    void wheelEvent(QWheelEvent *) Q_DECL_OVERRIDE;
#endif

private:
    Ui::MainWindow *ui;

    QGraphicsScene *mQGraphicsScene;

    QBasicTimer timer;

    QVector<ImageGraphicsItem *> mImageGraphicsItemVector;
    QVector<QImageUpdateThread*> mUpateThreadVector;

    QVector<LockImage *> mLockImageVector;
};

#endif // MAINWINDOW_H
